﻿#ifndef NctiObjectPubFun_H
#define NctiObjectPubFun_H
#include "dcl_ncti_object.h"
#include "ncti.h"
namespace NCTI
{
	class NctiDisplayDocCustomContainer;
	
	/**
	* @brief Geometric combination function
	*/
	class DECL_NCTI_OBJECT NctiObjectPubFun
	{
	public:
		/**
		* @brief Determine whether two entities can contain each other
		* @param[in] i_pCustomContainer, container
		* @param[in] i_TargeBody, entity
		* @param[in] i_TargeBodyTool, entity
		*/
		static Ncti_Boolean IsEnclosed(
			NctiDisplayDocCustomContainer* i_pCustomContainer,
			NCTI_MODEL_TAG i_TargeBody,
			NCTI_MODEL_TAG i_TargeBodyTool);
		
		/**
		* @brief Object geometric transformation
		* @param[in] i_Transf, transformation
		* @param[in-out] io_Body, entity
		*/
		static Ncti_Boolean transform_body(
			NctiDisplayDocCustomContainer* i_pCustomContainer,
			const NctiTransf& i_Transf,
			NCTI_MODEL_TAG& io_Body);

	};
}
#endif
